Міністерство освіти і науки, молоді та спорту України
Національний університет «Львівська політехніка»
Інститут комп’ютерних наук та інформаційних технологій
Кафедра автоматизованих систем управління
Розрахункова робота
на тему:
“ Замалювання фігур за методом Гуро ”
з дисципліни:
“ Комп’ютерна графіка ”
Львів-2013
Зміст
Теоретичні відомості
Порівняльний аналіз можливих методів
Вибраний алгоритм
Недоліки методу Гуро
Програма
Аналіз отриманих результатів
Вказівки користувачеві
Вступ
Замальовування методом Гуро - це метод лінійної інтерполяції освітленості в межах одного полігона. Він був винайдений в 1971 і носить ім'я свого винахідника. Це простий і ефективний метод творення відчуття зігнутості для рівного полігона. Цей метод також часто використається для скорочення глибини сцени, що прорисовується шляхом імітації зникнення вилучених об'єктів у тумані.
Отже, Метод Гуро поєднує пристойну якість картинки з відносно маленькою кількістю обчислень і компактним набором даних, який суть є просте розширення основної полігональної моделі. Однак, є важливих недоліків. Якість освітлення з використанням методу Гуро сильно залежить від розміру змальованих багатокутників. Використовується лінійна інтерполяція, так що світлові плями, такі, якими кожного боку полігону, що виглядає вельми нереалістично. Ще одна проблема - Метод Гуро не є коректним з точки зору перспективи, тобто в деяких випадках можна отримати результат, що залежить від положення спостерігача.
Теоретичні відомості
Метод тонування Гуро - метод зафарбовування в тривимірній комп'ютерній графіці (затінення), призначений для створення ілюзії гладкою криволінійної поверхні, описаної у вигляді полігональної сітки з плоскими гранями, шляхом інтерполяції кольорів прилеглих граней. Метод вперше запропонований Анрі Гуро в 1971 році.
На відміну від плоскої зафарбовування, при якій всі точки одного багатокутника малюються одним кольором, в методі Гуро інтенсивність освітлення, а, отже, і колір кожної точки - змінюється уздовж поверхні багатокутника.
Принцип методу полягає в послідовному обчисленні нормалей до кожної з граней тривимірної моделі, подальшого визначення нормалей вершин шляхом усереднення нормалей всіх прилеглих до вершини граней. Далі на підставі значень нормалей з обраної моделі відображення обчислюється освітленість кожної вершини, яка представляється інтенсивністю кольору в вершині. Розрахунок освітлення, використаний Гуро, був заснований на моделі дифузного віддзеркалення Ламберта.
Порівняльний аналіз можливих методів
Основна причина популярності алгоритмів зафарбування, заснованих на розбитті на багатокутники, - існування двох методів зафарбування: метод Гуро (Gouraud shading) і метод Фонга (Phong shading). Обидва методи дозволяють створювати згладжені зображення. Це нескладні алгоритм, в яких спочатку вираховуються параметри зафарбування в вершинах багатокутників, а потім відбувається інтерполяція по внутрішній області багатокутника.
Метод Гуро швидше методу Фонга, але з його допомогою не можна досягти деяких світлових ефектів (наприклад, відблисків). Його зазвичай використовують у програмах, де важлива швидкість: наприклад, у авіасимуляторах. Закраска методом Фонга дозволяє одержати більш якісне зображення, але вона і обходиться дорожче. У методі Гуро рахуються тільки інтенсивності в вершинах багатокутників, використовуючи функцію закраски. І потім інтерполюються для пікселів внутрішньої області. А у методі Фонга інтерполюються нормалі, і функція закраски застосовується до кожної точки. І хоча обидва цих методу стали фактично стандартними (метод Гуро використовується в багатьох графічних робочих станціях; обидва методи включені в GKS3D і PHIGS), до них існували інші способи зафарбування, розроблені, наприклад, Букнайтом (Bouknight, 1970) і Вайлі (Wylie, 1967 ).
Метод плоского зафарбовування. Цей метод додає трохи реалістичності в зображення сцени, так як яскравість зафарбовування кожної поверхні залежить деяким чином від кута падіння світла на неї.
На поч...